#define  _CRT_SECURE_NO_WARNINGS 1
#include <iostream>

using namespace std;
const int N = 1e6 + 10;
int a[N], b[N], c[N];
int la, lb, lc;

void add(int c[], int a[], int b[])

{
	for (int i = 0; i < lc; i++)
	{
		c[i] += a[i] + b[i];
		c[i + 1] += c[i] / 10;
		c[i] %= 10;

	}
	if (c[lc])
		lc++;
}
int main()
{
	string s1, s2;
	cin >> s1 >> s2;
	la = s1.size();
	lb = s2.size();
	lc = max(la, lb);
	for (int i = 0; i < la; i++)
	{
		a[la - 1 - i] = s1[i] - '0';

	}

	for (int i = 0; i < lb; i++)
	{
		b[lb - 1 - i] = s2[i] - '0';
	}
	add(c, a, b);

	for (int i = lc - 1; i >= 0; i--)
	{
		cout << c[i];
	}
	return 0;
}
